home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
prolog
/
modprolg
/
mod-prol.lha
/
Prolog
/
Examples
/
lib_queue.mod
< prev
next >
Wrap
Text File
|
1992-05-21
|
480b
|
19 lines
signature lib_queue_sig =
sig
pred empty/1 and enter/3 and remove/2 and rest/2 and isempty/1.
end.
structure lib_queue/lib_queue_sig =
struct
fun queue/1.
empty(queue([])).
enter(Item,queue(Q),queue([Item|Q])).
remove(queue([Item]),Item).
remove(queue([_|Q]),Item) :-
remove(queue(Q),Item).
rest(queue([Item]),queue([])).
rest(queue([Item|Q]),queue([Item|Rest])) :-
rest(queue(Q),queue(Rest)).
isempty(queue([])).
end.